内生安全构建应用安全能力时需要考虑哪些方面
内生安全构建应用安全能力时需要考虑以下方面:
应用安全治理:应用安全治理包括协助组织、管理和评估包括人员培养在内的各个层面的与应用安全相关的活动。这些活动包括:确定应用安全目标;规划和分配应用安全相关的组织、角色与职责;规划应用安全流程卡点,确定应用安全相关的预算和评估指标;针对合规要求确定安全控制措施,建立服务水平协议(SLA)等供应链管控措施以确保商业软件的安全;针对应用生命周期中涉及的架构师、开发人员、测试人员、运维人员等各类角色提供意识和专业类的安全培训,并建立相关的认证和考评机制。
应用安全情报:应用安全情报涵盖了在企业层面组织、汇集应用安全的相关知识,这些知识用于指导企业内的应用安全实践。这些知识包括:攻击案例、攻击技术、攻击模式、威胁建模等与攻击者相关的知识;合规需求清单、安全需求清单、安全编码规范、应用框架和中间件规范、软件供应商应用安全义务标准等在内的覆盖应用系统生命周期各项相关工作的标准和要求;满足安全需求所需的设计模式、中间件和通用库清单、安全架构模式、安全中间件、安全指南等。
应用生命周期安全:应用生命周期安全涵盖了进行应用系统安全分析、保障应用系统安全开发的各项实践,及其相关的流程、工具、文档等,包括:通过架构评审流程结合应用系统的软件架构、应用风险和威胁列表,进行应用系统安全架构分析,制定评估、修复、加固计划;通过代码审查工具结合应用系统特点,制定审查规则,针对应用系统生命周期中不同角色(例如开发人员、测试人员、安全审计人员)使用的工具制作自定义的配置文件来进行分析、跟踪并评估修复结果;把漏洞扫描、模糊性测试(fuzzing)、风险驱动的代码测试、攻击模型的应用、代码覆盖率分析等各种安全性测试与软件工程的标准质量保证(QA)流程、软件发布流程、应用上线流程进行深度融合,并将安全性测试的结果与软件缺陷进行关联和统一的管理。
应用安全部署和运行:应用安全部署和运行覆盖了传统的网络安全和应用系统运维组织的各项工作,其中包括通过安全应急响应中心(SRC)面向安全社区和用户收集应用系统的漏洞、安全事件、安全威胁;定期展开渗透测试与红蓝对抗,从应用系统的外部视角和攻击者视角获取应用系统在运行阶段的安全漏洞、安全事件和安全威胁;使用安全基础设施,对应用系统及其所在的计算环境进行监控,建立应用系统安全部署的架构指南和配置指南;建立应用系统和计算环境各个层面的基线(包括静态的配置,也包括动态的指标),然后进行有效的监控,并对安全事件和异常进行及时响应和处置;在配置管理、事件管理、问题管理等关键的流程中充分考虑安全相关的因素,把安全配置、系统补丁、应用升级、应急响应等安全工作与运行维护体系(如,ITIL)进行深度融合。